\chapter{Implementation}
\label{implementation}

This chapter will discuss how we implemented the designs outlined in the previous chapter. We came across a number of problems, since it's near impossible to get everything right in the design stage. In sections \ref{clientimpl} and \ref{serverimpl} are discussions of how we implemented the client and server, respectively. The next section, \ref{comm}, will explain how the client and server communicate. Section \ref{storage} explains how our program stores data locally.

\input{Implementation/client.tex}

\input{Implementation/gui.tex}

\input{Implementation/server.tex}

\input{Implementation/communication.tex}

\input{Implementation/storage.tex}

\section{Summary}
Despite our problems implementing some of the features, we managed to fix the bugs fairly well. After implementation, things seemed to be working but we needed to do some testing to make sure. The next chapter will describe our testing strategy and some bugs we encountered during the testing.
